#pragma once

#include <windows.h>
#include <gl\gl.h>
#include <gl\glu.h>
#include <string>
#include <map>

#include "IResources.h"
#include "IAutoLoadResources.h"
#include "Model.h"
#include "..\Sgm\SGMLoader.h"
#include "Shader.h"

class ModelManager : public IResources<Model*>, public IAutoLoadResources
{
private:
	std::map<std::string, Model*> models;
	CGparameter matrixParam;

public:
	ModelManager(CGparameter matrixParam);
	~ModelManager(void);

	void Load(const char *path, const char *ext);
	void Add(const char *name, Model *res);
	Model * Get(const char *name);

	int GetCount();
	void Get(int i, char *name, Model *&res);
};
